Naming services and directory services provide a way of identifying and associating names with data. Similarly, naming and directory services may also be used for referencing data and data locations using more easily comprehensible names. For example, NIS and NIS+ are naming services developed by Sun Microsystems for allowing users to access files and applications on any NIS host using a single login name and password. DNS, an Internet naming service, associates people-friendly names with computer network addresses. Additional naming and/or directory services include LDAP (Lightweight Directory Access Protocol), NDS (Novell Directory Services), and COS (Common Object Services). While normally having similar basic functionality, each naming or directory service may specify its own protocols, syntax, nomenclature, naming conventions, etc. When a naming service is implemented in accordance with such specifications, the implementation is often referred to as a namespace. For example, a person using a web browser on a personal computer to access a web page via a friendly DNS name (i.e. www.widgetcompany.com), is considered to be utilizing the DNS namespace.
Application programming interfaces (“APIs”) such as the Java Naming and Directory Interface (“JNDI”) provide an interface for communication between namespaces. For example, where namespace A and namespace B have been implemented in accordance with JNDI, a request for data from namespace B by a host in namespace A may be satisfied without requiring the host to be configured as a node of namespace B. Likewise, a request for data from namespace A by a host in namespace B may be satisfied without requiring the host to be configured as a node of namespace A. However, inter-namespace data exchange APIs such as JNDI require that a request for data from a foreign namespace by a host in a local namespace include specific location/naming information. Solutions have been offered that require special mechanisms within a naming service itself to create, recognize, and traverse federated junctions between namespaces, however such solutions require participation by the naming service and are therefore limited to naming services that implement identical federation schemes.